home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
- # Complete check of a stateless encoding.
- # Usage: check-stateless SRCDIR CHARSET
- srcdir="$1"
- charset="$2"
- set -e
- ./table-from "$charset" > tmp-"$charset".TXT
- ./table-to "$charset" | sort > tmp-"$charset".INVERSE.TXT
- cmp "${srcdir}"/"$charset".TXT tmp-"$charset".TXT 2> /dev/null
- if test -f "${srcdir}"/"$charset".IRREVERSIBLE.TXT; then
- cat "${srcdir}"/"$charset".TXT "${srcdir}"/"$charset".IRREVERSIBLE.TXT | sort | uniq -u > tmp-orig-"$charset".INVERSE.TXT
- cmp tmp-orig-"$charset".INVERSE.TXT tmp-"$charset".INVERSE.TXT 2> /dev/null
- else
- cmp "${srcdir}"/"$charset".TXT tmp-"$charset".INVERSE.TXT 2> /dev/null
- fi
- rm -f tmp-"$charset".TXT tmp-"$charset".INVERSE.TXT tmp-orig-"$charset".INVERSE.TXT
- exit 0
- # For a new encoding:
- # You can create the "$charset".TXT like this:
- # ./table-from "$charset" > "$charset".TXT
- # You can create the "$charset".IRREVERSIBLE.TXT like this:
- # ./table-to "$charset" | sort > "$charset".INVERSE.TXT
- # diff "$charset".TXT "$charset".INVERSE.TXT | grep '^[<>]' | sed -e 's,^. ,,' > "$charset".IRREVERSIBLE.TXT
-